define(['jquery'], function($) {
	return function() {

		(function($) {

			$.fn.menu = function(data) {
				var $wrapper = $('<dl class="menu-wrapper"><dt  class="menu-header"><img src="images/nav1.jpg"/><a>全部商品分类</a></dt></dl>').appendTo(this);
				//渲染结构
				$.each(data, function(index, item) {
					//创建插入每个菜单项
					var $m_item = $('<dd class="menu-item">\
                <div class="item-label"></div>\
                <div class="item-content"><div class="xx">x</div></div>\
            </dd>').appendTo($wrapper);
					//菜单项的label
					$m_item.children('.item-label').append('<a href="' + item.url + '">' + item.label + '</a><em class="item-gt">&gt;</em>')
					//菜单项的content
					$m_item.children('.item-content').append('<div class="item-ctn-left"></div>');
					//content左侧内容
					var $item_ctn_left = $m_item.find('.item-ctn-left').first();
					$.each(item.children.left, function(index, item) {
						var $div = $('<div><a href="' + item.url + '">' + item.label + '</a><div></div></div>').appendTo($item_ctn_left);
						$.each(item.children, function(index, item) {
							$div.children('div').append('<a class="cell-' + item.ac + '" href="' + item.url + '">' + item.label + '</a>');
						})
					})
				})
				//绑定事件
				$('.menu-item').css({'display': 'none'});
				//关闭二级
				$('.xx').on('mousedown', function() {
					$(this).closest('.item-content').css({
						'display': 'none'
					});
				})
				//显示第一级
				$('.menu-wrapper').on('mouseenter mouseleave', function() {
					$(this).find('.menu-item').toggle();
				})
				//显示第二级
				$('.menu-wrapper').on('mouseenter', '.menu-item', function() {
					$(this).children('.item-label').addClass('active').end().siblings().children('.item-label').removeClass('active');
					$(this).children('.item-content').show().end().siblings().children('.item-content').hide();
				})
				$('.menu-wrapper').on('mouseleave', '.menu-item', function() {
					$(this).children('.item-label').removeClass('active');
					$(this).children('.item-content').hide();
				})
				return this;
			}
		})(jQuery);
	}
})